#example6_14.py
#coding=utf-8
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from datetime import datetime

date_string=np.loadtxt('stock.csv',delimiter=',',dtype=str,
                        usecols=(0,),unpack=True,skiprows=1)

open_price=np.loadtxt('stock.csv',delimiter=',',
                        usecols=(1,),unpack=True,skiprows=1)

open_date=[datetime.strptime(d,'%Y/%m/%d').date() for d in date_string]

plt.rcParams['font.sans-serif']=['SimHei']
#figure布局
fig=plt.figure(figsize=(8,4))
ax1=fig.add_subplot(1,1,1) 

plt.plot_date(open_date,open_price,color='red',linestyle='--')

#设置x轴主刻度格式
monthes = mdates.MonthLocator()        #主刻度为每月
ax1.xaxis.set_major_locator(monthes)     #设置主刻度
ax1.xaxis.set_major_formatter(mdates.DateFormatter('%b')) #月份缩写 
#设置x轴副刻度格式
daysLoc = mpl.dates.DayLocator(interval=7) #每7天为1个副刻度
ax1.xaxis.set_minor_locator(daysLoc)
ax1.xaxis.set_minor_formatter(mdates.DateFormatter('%Y%m%d'))

#设置刻度线与主刻度标签间的距离
ax1.tick_params(pad=8)

# 设置刻度字体大小
plt.xticks(fontsize=15)
plt.yticks(fontsize=15)
plt.title('开盘价',fontsize=15)
plt.gcf().autofmt_xdate()  #自动旋转日期主刻度标记
plt.show()

